<?php
// registrar scripts y css
add_action('admin_enqueue_scripts', 'registrar_dimension_css_js', 10, 1);

function registrar_dimension_css_js($hook) {

    if ($hook == 'parametros_page_dimensiones') {
        wp_enqueue_script('dimensiones-js', get_template_directory_uri() . '/js/parametros/dimensiones.js');
        wp_enqueue_style('formularios-css', get_template_directory_uri() . '/css/formularios.css');

//estas son variables que puedo usar en los scripts
        wp_localize_script('dimensiones-js', 'ajax_object', array('ajax_url' => admin_url('admin-ajax.php')));
    }
}

add_action('wp_ajax_guardar_dimension', 'guardar_dimension_ajax');

function guardar_dimension_ajax() {
    global $wpdb;

//    SI TODO ES CORRECTO GUARDAMOS LOS CAMPOS
    if ($_POST['estado'] == 'true') {
        $estado = 1;
    } else {
        $estado = 0;
    }

    $dimension = array(
        'id_producto' => $_POST['id_producto'],
        'nombre' => $_POST['nombre'],
        'dimension' => $_POST['dimension'],
        'dimension_demasias' => $_POST['dimension_demasias'],
        'id_prod_sf' => $_POST['id_prod_sf'],
        'link' => $_POST['link'],
        'observacion' => $_POST['observacion'],
        'estado' => $estado
    );

    if ($_POST['id_dimension'] != '') {//si ID != vacio significa que me llega un id por post para realizar una modificación
        $wpdb->update(dimensiones, $dimension, array('id_dimension' => $_POST['id_dimension']), array('%d', '%s', '%s', '%s', '%d', '%s', '%s', '%d'));
    } else {
        $wpdb->insert(dimensiones, $dimension, array('%d', '%s', '%s', '%s', '%d', '%s', '%s', '%d'));
    }

    mostrar_tabla_dimensiones($_POST['id_producto']);

    die();
}

add_action('wp_ajax_eliminar_dimension', 'eliminar_dimension_ajax');

function eliminar_dimension_ajax() {
    global $wpdb;

    $wpdb->query("DELETE FROM dimensiones WHERE id_dimension = " . $_POST['id_dimension']);

    mostrar_tabla_dimensiones($_POST['id_producto']);

    die();
}

add_action('wp_ajax_ver_lista_dimensiones', 'ver_lista_dimensiones_ajax');

function ver_lista_dimensiones_ajax() {

    mostrar_tabla_dimensiones($_POST['id_producto']);
    die();
}

//FUNCION QUE SE EJECUTA AL INGRESAR POR PRIMERA VEZ AL FORMULARIO
function mostrar_dimensiones() {
    global $wpdb;
    ?>

    <div style="position: relative;">
        <div class="wrap" style="box-shadow: 0 0 2px 0 black; display: inline-block; margin: 10px; padding: 10px 80px 40px;">
            <?php mostrar_fomulario_dimensiones(); ?>

            <div class="listado-dimensiones">
                <div class = "icon32 icon32-bws" id = "icon-options-general"></div>
                <h2>Listado de Dimensiones por Producto</h2>
                <br/>
                <div class="select-producto">
                    <label>Seleccione el producto: </label>
                    <select class="productos" style="width: 300px;">
                        <?php
                        $productos = $wpdb->get_results("SELECT id_producto, nombre FROM productos WHERE estado != 0 ORDER BY nombre ASC");
                        ?>
                        <option value="0">Seleccionar..</option>
                        <?php
                        foreach ($productos as $producto) {
                            ?>
                            <option value="<?php echo $producto->id_producto; ?>"><?php echo $producto->nombre; ?></option>
                        <?php } ?>
                    </select>
                    <!-- <div class="ver-dimensiones-producto button-primary" style="float: right;">Ver Lista de Precios</div> -->
                </div>
                <br/>
                <br/>
                <div class="lista" >
                    <?php mostrar_tabla_dimensiones(0); ?>
                </div>

                <br/>
                <label class="agregar button-primary">+ Agregar</label>
                <br/><br/>
            </div>
        </div>
    </div>
    <?php
}

function mostrar_fomulario_dimensiones() {
    ?>
    <div id = "popup">
        <div class="close"></div>
        <div id="alta-dimension">

            <div class="icon32" id="icon-options-general"></div>
            <h2>Dimensión</h2>

            <br/>
            <form method="post" action="admin.php?page=dimensiones">
                <table>
                    <tr>
                        <td>ID:</td><td><input class="id_dimension" type="text" size="6" disabled style="text-align: center; background-color: #F2F2F2;"/></td>
                    </tr>
                    <tr>
                        <td>Producto:</td><td><input class="producto" type="text" size="50" disabled style="background-color: #F2F2F2;"/></td>
                    </tr>
                    <tr>
                        <td>Nombre:</td><td><input class="nombre" type="text"  size="50"/></td>
                    </tr>
                    <tr>
                        <td>Dimensión:</td><td><input class="dimension" type="text" size="50"/></td>
                    </tr>
                    <tr>
                        <td>Dimensión <br>con Demasías:</td><td><input class="dimension_demasias" type="text" size="50"/></td>
                    </tr>
                    <tr>
                        <td>ID Prod. Symfony:</td><td><input class="id_prod_sf" type="text" size="50" /></td>
                    </tr>
                    <tr>
                        <td>Link:</td><td><input class="link" type="text" size="50" /></td>
                    </tr>
                    <tr>
                        <td>Observación:</td><td><textarea class="observacion" rows="3" cols="47" ></textarea></td>
                    </tr>
                    <tr>
                        <td>Estado:</td><td><input class="estado" type="checkbox" checked/></td>
                    </tr>
                </table>

                <p class="submit">
                    <input type="button" name="guardar" class="guardar button-primary" value="Guardar" />
                    <input type="button" name="cancelar" class="cancelar button-primary" value="Cancelar" />
                </p>
            </form>


        </div>
    </div>
    <div id="backgroundPopup"></div>
    <?php
}

function mostrar_tabla_dimensiones($id_producto) {
    global $wpdb;
//$dimensiones = get_option('dimensiones');

    $dimensiones = $wpdb->get_results(
            "SELECT  dimension.*, producto.nombre AS producto_nombre
             FROM
             dimensiones AS dimension
             LEFT JOIN
             productos AS producto
             ON
             producto.id_producto = dimension.id_producto
             WHERE
             dimension.id_producto = " . $id_producto . " ORDER BY dimension.id_dimension DESC"
    );
    ?>


    <table class="tabla-dimensiones">
        <tr>
            <th style="text-align: center;">Nº</th>
            <th style="text-align: center;">ID</th>
            <th style="width: 150px;">Producto</th>
            <th style="width: 100px;">Nombre</th>
            <th style="width: 150px;">Dimensión</th>
            <th style="width: 150px;">Dimensión Demas.</th>
            <th style="text-align: center;">ID Prod SF.</th>
            <th style="width: 200px;">Link</th>
            <th style="width: 200px;">Observasión</th>
            <th style="">Estado</th>
        </tr>


        <?php
        if ($dimensiones) {

            $i = 1;
            foreach ($dimensiones as $dimension) {
                ?>
                <tr>
                    <td class="t-nro" style="text-align: center;"><?php echo $i; ?></td>
                    <td class="t-id" style="text-align: center;"><?php echo $dimension->id_dimension; ?></td>
                    <td class="t-producto"><?php echo $dimension->producto_nombre; ?></td>
                    <td class="t-nombre"><?php echo $dimension->nombre; ?></td>
                    <td class="t-dimension"><?php echo $dimension->dimension; ?></td>
                    <td class="t-dimension_demasias"><?php echo $dimension->dimension_demasias; ?></td>
                    <td class="t-id_prod_sf" style="text-align: center;"><?php echo $dimension->id_prod_sf; ?></td>
                    <td class="t-link"><?php echo $dimension->link; ?></td>
                    <td class="t-observacion"><?php echo $dimension->observacion; ?></td>
                    <td class="t-estado" style="text-align: center;"><?php
            if ($dimension->estado == 1) {
                echo 'Activo';
            } else {
                echo 'Inactivo';
            }
                ?>
                        <input class="t-estado" type="hidden" name="estado" value="<?php echo $dimension->estado; ?>"/></td>
                    <td><label class="modificar" ></label><input id="M-<?php echo $dimension->id_dimension; ?>" type="hidden" value="<?php echo $dimension->id_dimension; ?>" style="display: none;"/></td>
                    <td><label class="eliminar" ></label><input id="E-<?php echo $dimension->id_dimension; ?>" type="hidden" value="<?php echo $dimension->id_dimension; ?>" style="display: none;"/></td>
                </tr>

                <?php
                $i++;
            }
            ?>
            <div class="cargando" style="display: none; z-index: 999;"><img src="<?php bloginfo('template_url'); ?>/images/loader.gif" alt="mensaje loader"/></div>
        </table>


        <script type="text/javascript">
            jQuery("label.eliminar").click(function() {
                if (confirm('¿Esta seguro que desea eliminar este dimension?')) {
                    //AJAX
                    var data = {//estos son los datos que paso por $_POST
                        action: 'eliminar_dimension',
                        id_dimension: jQuery(this).parent().find('input').val(),
                        id_producto: jQuery('.productos').val()
                    };

                    jQuery.ajax({
                        type: "POST",
                        url: ajax_object.ajax_url,
                        data: data,
                        beforeSend: function() {
                            cargando();
                        },
                        success: function(datos) {
                            //                alert(datos);
                            jQuery('.lista').html(datos);
                        },
                        timeout: 4000,
                        error: function() {
                            alert('No se ha podido establecer la conexión con el servidor.');
                            jQuery('.cargando').fadeOut();

                        }
                    });
                }
            });

            jQuery("label.modificar").click(function() {
                loadPopup(); // function show popup

                jQuery('.id_dimension').val(jQuery(this).parent().find('input').val());
                jQuery('.producto').val(jQuery('select.productos option:selected').text());
                jQuery('.nombre').val(jQuery(this).parent().parent().find('.t-nombre').text());
                jQuery('.dimension').val(jQuery(this).parent().parent().find('.t-dimension').text());
                jQuery('.dimension_demasias').val(jQuery(this).parent().parent().find('.t-dimension_demasias').text());
                jQuery('.link').val(jQuery(this).parent().parent().find('.t-link').text());
                jQuery('.id_prod_sf').val(jQuery(this).parent().parent().find('.t-id_prod_sf').text());
                jQuery('.observacion').val(jQuery(this).parent().parent().find('.t-observacion').text());

                var check;
                if (jQuery(this).parent().parent().find('input.t-mostrar_en_caja').val() == 1) {
                    check = true;
                } else {
                    check = false;
                }
                jQuery('.mostrar_en_caja').attr('checked', check);

            });

            function loadPopup() {
                jQuery("#popup").fadeIn(0500); // fadein popup div
                jQuery("#backgroundPopup").fadeIn(0001);

            }

            function cargando() {

                var w, h; //varibles width y height
                w = jQuery('.tabla-dimensiones').width();
                h = jQuery('.tabla-dimensiones').height() - 21;
                //            alert(w+' || '+h);
                jQuery('.cargando').css({width: w, height: h, 'line-height': (h + 9) + 'px'});
                jQuery('.cargando').fadeIn();
            }


        </script>

    <?php } else { ?>
        <div class="cargando" style="display: none; z-index: 999; top: 160px;"><img src="<?php bloginfo('template_url'); ?>/images/loader.gif" alt="mensaje loader"/></div>
        </table>

        <p>No hay datos para mostrar.</p>
        <?php
    }
}
?>
